const { Controller } = require('egg');

module.exports = class AuthController extends Controller {

  // 登陆系统/redis
  async login() {
    const { ctx, service } = this;

    // TODO 参数校验
    const params = ctx.request.query.uuid;
    console.log(`Query参数:${ctx.request.query}`); // 获取GET请求传递的Query参数
    console.log(`Body参数:${ctx.request.body}`); // 获取POST提交的body信息，Content-Type=x-www-form-urlencoded

    // DO 调用Service
    const data = await service.user.show(params);
    // DO 调用格式转换器
    this.transformer('信息信息获取成功', data);
  }

  // 退出系统/redis
  async logout() {
    const { ctx, service } = this;

    // TODO 参数校验
    const params = ctx.request.get('token');
    console.log(`Query参数:${ctx.request.query}`); // 获取GET请求传递的Query参数
    console.log(`Body参数:${ctx.request.body}`); // 获取POST提交的body信息，Content-Type=x-www-form-urlencoded

    // DO 调用Service
    const data = await service.user.show(params);
    // DO 调用格式转换器
    this.transformer('信息信息获取成功', data);
  }

  // 图片验证码/redis
  async imageValidate() {
    const { ctx, service } = this;

    // TODO 参数校验
    const params = ctx.request.query.uuid;
    console.log(`Query参数:${ctx.request.query}`); // 获取GET请求传递的Query参数
    console.log(`Body参数:${ctx.request.body}`); // 获取POST提交的body信息，Content-Type=x-www-form-urlencoded

    // DO 调用Service
    const data = await service.user.show(params);
    // DO 调用格式转换器
    this.transformer('图片验证成功', data);
  }

  // 滑动验证码/redis
  async slideValidate() {
    const { ctx, service } = this;

    // TODO 参数校验
    const params = ctx.request.query.uuid;
    console.log(`Query参数:${ctx.request.query}`); // 获取GET请求传递的Query参数
    console.log(`Body参数:${ctx.request.body}`); // 获取POST提交的body信息，Content-Type=x-www-form-urlencoded

    // DO 调用Service
    const data = await service.user.show(params);
    // DO 调用格式转换器
    this.transformer('滑动验证成功', data);
  }


  // 四则运算验证码/redis
  async countValidate() {
    const { ctx, service } = this;

    // TODO 参数校验
    const params = ctx.request.query.uuid;
    console.log(`Query参数:${ctx.request.query}`); // 获取GET请求传递的Query参数
    console.log(`Body参数:${ctx.request.body}`); // 获取POST提交的body信息，Content-Type=x-www-form-urlencoded

    // DO 调用Service
    const data = await service.user.show(params);
    // DO 调用格式转换器
    this.transformer('计算验证成功', data);
  }

  // 点击验证码/redis
  async clickValidate() {
    const { ctx, service } = this;

    // TODO 参数校验
    const params = ctx.request.query;
    console.log(`Query参数:${ctx.request.query}`); // 获取GET请求传递的Query参数
    console.log(`Body参数:${ctx.request.body}`); // 获取POST提交的body信息，Content-Type=x-www-form-urlencoded

    // DO 调用Service
    const data = await service.user.show(params);
    // DO 调用格式转换器
    this.transformer('点击验证成功', data);
  }

};
